package cn.jk.service;

import org.springframework.aop.framework.AopContext;
import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional;

@Component
public class AopService {

	@Transactional(rollbackFor = Throwable.class)
	public void test(String str){
		System.out.println("执行 AopService 方法 test 参数: " + str);
		//如此执行方法则不会被代理
		this.test();
		//如此可以获得当前被代理的对象并执行该方法
		((AopService)AopContext.currentProxy()).test();
	}


	public void test(){
		System.out.println("aopService test is invoked");
	}
}
